/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package mx.edu.itschapala.sistemas.septimo.control;

import java.util.ArrayList;
import java.util.List;
import mx.edu.itschapala.sistemas.septimo.modelo.Ventas;
import mx.edu.itschapala.sistemas.septimo.vista.enumeracion.TipoBusqueda;

/**
 *
 * @author Estudiante
 */
public class VentasLnLista implements VentasLnLocal {
     private Ventas ventas;
    private List<Ventas> lista = new ArrayList<Ventas>();

    @Override
    public void registrar(Ventas ventas) {
            lista.add(ventas);
    }

    @Override
    public void modificar(Ventas ventas) {
          Ventas tmp = buscarPorId(ventas.getId());
        if (tmp != null) {
            lista.remove(tmp);
            lista.add(ventas);
        }
    }

    @Override
    public void eliminar(Ventas ventas) {
         Ventas tmp = buscarPorId(ventas.getId());
        if (tmp != null) {
            lista.remove(tmp);
        }
    }

    @Override
    public Ventas buscarPorId(int id) {
           Ventas tmp = null;
        for (Ventas v : lista) {
            if (v.getId()== id) {
                tmp = v;
            }
              
        }
    return tmp;
    }

    @Override
    public List<Ventas> getTodos() {
        return lista;
    }

    @Override
    public List<Ventas> getPorNombre(String Nombre, TipoBusqueda Criterio) {
         List<Ventas> tmp = new ArrayList<Ventas>();
        switch (Criterio) {
            case INICIAR:
                for (Ventas v : lista) {
                    if (v.getProducto().startsWith(Nombre)) {
                        tmp.add(v);
                    }
                }
                break;
            case CONTIENE:
                for (Ventas v : lista) {
                    if (v.getProducto().startsWith(Nombre)) {
                        tmp.add(v);
                    }
                }
                break;

        }
        return tmp;
        
    }

 
    
}
